Define attribute names for use by external applications

Define attribute names for use by external applications

Oracle Policy Modeling automatically assigns an identifier to every attribute in the rulebase. These IDs are used by Oracle Policy Modeling to notate rules. The attribute ID is stored in the rulebase along with the attribute text and attribute type. By default, Boolean attributes are prefixed with the letter b and variable attributes are prefixed with the letter p.

Attribute IDs are regenerated every time a rule document is compiled and change values as attributes are re-worded. For this reason, public names, which are user-defined attribute IDs, should be used on a project because they ensure that the attribute IDs for important attributes are reliable and static and are therefore suitable for use by external applications. For example, the automatically assigned attribute ID "b1@Doc1" could be replaced with the more meaningful public name "date_of_birth".

Public name information is stored in the properties file for a project. After the rules have been written and compiled, public names should be assigned to all attributes that the application needs to access. This includes all base level attributes and all top level attributes.

Important intermediate attributes also need to have public names. For more information, see Set public identifiers for entities and attributes.

What do you want to do?

Automatically generate public names for base and top level attributes

Replace auto-generated public names with meaningful ones

Check that all base level attributes have public names

Maintain public names

Automatically generate public names for base and top level attributes

Once you have created your rules in Word or Excel and compiled them, you need to generate public names for all base and top level attributes.

To automatically generate public names:

  1. In Oracle Policy Modeling, open the properties file for your project.
  2. Right-click in the Attributes window and select Generate Public Names... from the pop-up menu.
  3. In the Generate Public Names dialog box you will be shown a list of base and top level attributes that do not have public names. Ensure that all appropriate attributes are selected.
  4. Change the prefix, if necessary, to something more meaningful for the selected attributes (eg "claimant_").



  5. Click OK. The Attributes list in the properties file will now show each attribute and its public name (ID).

Replace auto-generated public names with meaningful ones

After you have generated your public names, you may want to replace the auto-generated name with something more meaningful for each attribute.

To edit an attribute's public name:

  1. In Oracle Policy Modeling, open the properties file for your project.
  2. Right-click on the attribute in the Attributes list and select Edit Attribute... from the pop-up menu.
  3. In the Attribute Editor change the name in the Public Name text box to something more meaningful (see below).



  4. Click OK. The Attributes list in the properties file will be updated to reflect the new public name.

Choose a meaningful public name

Your choice of public name may be influenced by a number of factors including:

Naming attributes clearly and consistently can make finding and sorting attributes much easier on large projects.

Note that public names cannot have spaces in them but underscores and dots can be used.

Check that all base level attributes have public names

It is important that all base level attributes in a project have public names. Oracle Policy Modeling can optionally check that all base level attributes have public names every time you build the rulebase. To turn on this feature, go to Tools | Options | Rulebase Development | Build Validation and select the Check Data Model checkbox.

If base level attributes are detected without public names you will be informed that the Data Model Check has not been successful. You will then need to provide public names to these base level attributes before you can successfully build.

Maintain public names

Over time rules naturally change, either due to legislative changes or business policy. There are three different scenarios that a rule developer may face regarding public name maintenance:

  1. Add a new proof to the current base level rule.
  2. If the public name can now be moved to a new base level attribute that is used to prove the newly inferred rule, move the public name.
  3. If the public name cannot be moved onto a new identical attribute then delete the public name.
  4. Add any new public names that are necessary for any new base level questions that have been created by the new rule proof.